#ifndef CH446Q_H
#define CH446Q_H

#include "gpio.h"

#define CHIP_A 0
#define CHIP_B 1
#define CHIP_C 2
#define CHIP_D 3
#define CHIP_E 4
#define CHIP_F 5
#define CHIP_G 6
#define CHIP_H 7

#define CHIP_I 8
#define CHIP_J 9

#define DAT_Set() HAL_GPIO_WritePin(DAT_GPIO_Port,DAT_Pin,GPIO_PIN_SET)
#define DAT_Clr() HAL_GPIO_WritePin(DAT_GPIO_Port,DAT_Pin,GPIO_PIN_RESET)

#define CK_Set() HAL_GPIO_WritePin(CK_GPIO_Port,CK_Pin,GPIO_PIN_SET)
#define CK_Clr() HAL_GPIO_WritePin(CK_GPIO_Port,CK_Pin,GPIO_PIN_RESET)

#define ENA_Set() HAL_GPIO_WritePin(ENA_GPIO_Port,ENA_Pin,GPIO_PIN_SET)
#define ENA_Clr() HAL_GPIO_WritePin(ENA_GPIO_Port,ENA_Pin,GPIO_PIN_RESET)

#define CSA_Set() HAL_GPIO_WritePin(CSA_GPIO_Port,CSA_Pin,GPIO_PIN_SET)
#define CSA_Clr() HAL_GPIO_WritePin(CSA_GPIO_Port,CSA_Pin,GPIO_PIN_RESET)

#define CSB_Set() HAL_GPIO_WritePin(CSB_GPIO_Port,CSB_Pin,GPIO_PIN_SET)
#define CSB_Clr() HAL_GPIO_WritePin(CSB_GPIO_Port,CSB_Pin,GPIO_PIN_RESET)

#define CSC_Set() HAL_GPIO_WritePin(CSC_GPIO_Port,CSC_Pin,GPIO_PIN_SET)
#define CSC_Clr() HAL_GPIO_WritePin(CSC_GPIO_Port,CSC_Pin,GPIO_PIN_RESET)

#define CSI_Set()
#define CSI_Clr()

#define CSJ_Set()
#define CSJ_Reser()

void sendXYraw(uint8_t chip,uint16_t x,uint16_t y,uint16_t setorclear);
void clearAllconnections();

#endif